import {
  config
} from './base.js'; //导入接口的前缀地址

export const Request = (options) => {
  return new Promise((resolve, reject) => {
    uni.request({
      url: config.baseURL + options.url, //接口地址：前缀+方法中传入的地址
      method: options.method || 'GET', //请求方法：传入的方法或者默认是“GET”
      data: options.data || {}, //传递参数：传入的参数或者默认传递空集合
      headers: {
        'Authorization ': uni.getStorageSync('token') || null //自定义请求头信息
      },
      success: (res) => {
        if (options.url === '/wxapplet/register' || options.url === '/wxapplet/getgoodsinfo' || options
          .url === '/wxapplet/getcarousel' || options.url === '/wxapplet/goodslx' || options.url ===
          '/wxapplet/getbroadcast' || options.url ===
          '/wxapplet/getPhoneNumber') {
          resolve(res);
        } else {
          const openId = uni.getStorageSync("openid")
          const userInfo = uni.getStorageSync("userInfo")
          if (openId) {
            resolve(res)
          } else {
            uni.showModal({
              title: '登录/注册',
              content: '登录使用完整功能',
              showCancel: true,
              cancelText: '取消',
              confirmText: '去登录',
              success: (res) => {
                if (res.confirm) {
                  //获取当前页面路径
                  let pages = getCurrentPages();
                  let currentRoute = pages[pages.length - 1].route;
                  console.log("页面路径", currentRoute);
                  uni.setStorageSync("currentRoute", currentRoute);
                  uni.redirectTo({
                    url: '/pages/login/login'
                  })
                }
              },

            })
            // uni.showToast({
            //   title: `登录过期`,
            //   icon: "none",
            // });
          }
        }

        //返回的数据（不固定，看后端接口，这里是做了一个判断，如果不为true，用uni.showToast方法提示获取数据失败)
        // if (res.data.success != true) {
        // 	return uni.showToast({
        // 		title: '获取数据失败',
        // 		icon: 'none'
        // 	})
        // }
        // 如果不满足上述判断就输出数据

      },
      // 这里的接口请求，如果出现问题就输出接口请求失败
      fail: (err) => {
        //  console.log(err)
        reject(err)
      }
    })
  })
}